// 将一个平铺数组转为树形结构的数组
// 思路：用pid去匹配id,如果匹配的到，就将pid的内容追加到id这个对象children属性中，匹配不到则代表是最外层的
// 过程：
// （1）循环数组,将key为id,value为当前项
// （2）循环数组，匹配pid
function tree(arr){
  // 声明一个对象
  const treeArr = []
  const map  = {}
  arr.forEach(item => {
    map[item.id] = item
    map[item.id].children = []
  });
  arr.forEach(item => {
    if (map[item.pid]){
      map[item.pid].children.push(item)
    } else {
      treeArr.push(item)
    }
  })
  // 导出这个对象
  return treeArr
}
export default tree
